package model.commandes;

import model.document.Document;

public class Ecrire implements Commande {

	public String texte;

	public Ecrire(String texte) {
		this.texte = texte;
	}

	@Override
	public void visit(Document document) {
		// ecriture du texte a la position courante du curseur
		String deb = document.getPositionCourante() == 0 ? "" : document
				.getLigne(document.getLigneCourante()).getContenu()
				.substring(0, document.getPositionCourante());
		String fin = document.getPositionCourante() + 1 > document
				.getLigne(document.getLigneCourante()).getContenu().length() ? ""
				: document.getLigne(document.getLigneCourante()).getContenu()
						.substring(document.getPositionCourante() + 1);
		document.getLigne(document.getLigneCourante()).setContenu(
				deb + texte + fin);

		DeplacerCurseurDroit decaler = new DeplacerCurseurDroit();
		decaler.visit(document);
	}

}
